import request from '@/common/sju.request'
import appConfig from '@/config/config'
//微信js-sdk引入
var jweixin = require('jweixin-module')

let weixin = {
	/**
	 * @description  获取微信jsconfig参数
	 * success回调方法的参数就是返回的原始数据
	 * @param {string} title   分享标题
	 * @param {string} linkUrl 分享页面路径
	 * @param {string} imgUrl  图片路径
	 * @param {string} desc    分享描述   
	 * @param {function} success 成功后回调的方法
	 */
	weixinJSConfig: function(title, linkUrl, imgUrl,desc) {
		//H5当前页面路径
		let url = window.location.href
		request('/home/getWeixinJSConfig','post',{
			url: url
		}).then(res=>{
			//微信分享权限验证配置参数构造
			var config = {
				debug: false, //是否启用调试
				appId: res.data.appId, //微信公众号appID
				timestamp: res.data.timestamp, //时间戳
				nonceStr: res.data.nonceStr,	//签名的随机串
				signature: res.data.signature,	//签名
				jsApiList: [					//需要使用的JS接口列表
					'checkJsApi',
					'updateTimelineShareData',
					'updateAppMessageShareData',
					'hideMenuItems'
				]
			}
			
			//微信注入权限验证配置
			jweixin.config(config)
			
			//需在用户可能点击分享按钮前就先调用
			jweixin.ready(function() {
				jweixin.hideMenuItems({// 要隐藏的菜单项，只能隐藏“传播类”和“保护类”按钮，所有menu项见附录3
					menuList: [
						'menuItem:originPage',
						'menuItem:openWithSafari',
						'menuItem:openWithQQBrowser',
						'menuItem:editTag',
						'menuItem:copyUrl',
						'menuItem:share:qq', 
						'menuItem:favorite', 
						'menuItem:share:QZone',
						'menuItem:openWithSafari'
					]
				})
				//分享到朋友圈
				jweixin.updateTimelineShareData({
					title: title, // 分享标题
					link: appConfig.appUrl + linkUrl, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
					imgUrl: imgUrl, // 分享图标
					success: function() {
						// alert("updateTimelineShareData");
					}
				})
			
				//分享给朋友
				jweixin.updateAppMessageShareData({
					title: title, // 分享标题
					desc: desc, // 分享描述
					link: appConfig.appUrl + linkUrl, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
					imgUrl: imgUrl, // 分享图标
					success: function() {
						// alert("updateAppMessageShareData");
					}
				})
			})
		})
	},
	// 微信H5扫码功能
	scanQRCode: function() {
		//H5当前页面路径
		let url = window.location.href 
		request('/home/getWeixinJSConfig','post',{
			url: url
		}).then(res=>{
			//微信权限验证配置参数构造
			let config = {
				debug: false,
				appId: res.data.appId,
				timestamp: res.data.timestamp,
				nonceStr: res.data.nonceStr,
				signature: res.data.signature,
				jsApiList: [
					'checkJsApi',
					'updateTimelineShareData',
					'updateAppMessageShareData',
					'hideMenuItems',
					'scanQRCode'	//扫码权限
				]
			}
				
			//微信注入权限验证配置
			jweixin.config(config)
			jweixin.scanQRCode({
				// 默认为0，扫描结果由微信处理，1则直接返回扫描结果，
				needResult: 1, 
				 // 可以指定扫二维码还是一维码，默认二者都有
				scanType: ["qrCode","barCode"],
				success: function (res) {
					// 当needResult 为 1 时，扫码返回的结果
					let result = res.resultStr
					if(res.resultStr.indexOf(',') > 0){
						//条形码时返回的格式类似为【code128,123456789】		
						let dealserialNumber=res.resultStr.split(',')[1]
						//处理条形码扫描的字符
						dealserialNumber = dealserialNumber.replace(/[^a-z\d]/ig, "")
						dealserialNumber=dealserialNumber.replace('sn','')
						uni.setStorageSync('dealserialNumber', dealserialNumber)
						//location.href='接收结果页面='+dealserialNumber;//扫描结果传递到的处理页面
					}else{
						//二维码时
						alert(res.resultStr);
						//location.href='接收结果页面='+res.resultStr;//扫描结果传递到的处理页面
					}
				}
			})
		})
	}
	
}
export default weixin